#ifndef MATERIAL_HPP_INCLUDED
#define MATERIAL_HPP_INCLUDED

#include <string>
#include <vector>

struct BurnableData
{
	bool Found;
	unsigned int BurnTimer, Flammability, Spreads;

	BurnableData() : Found(false), BurnTimer(0), Flammability(0), Spreads(0) { }
};

struct MaterialData
{
	std::string Name;

	BurnableData Burnable;
	bool isBurnable() { return Burnable.Found; }

	MaterialData() : Name("NULL") { }
};

class Material
{
public:
	static int getByName(std::string name);
	static std::vector<MaterialData> data;
	static void load();
};

#endif
